1 对象的特点

1.1 动态添加属性

1.1.2 在访问DOM元素列表时

DOM的元素节点对象,可以动态添加属性,来标记或存储数据

1.2 访问属性方法

1.2.1 Object[key]

key为变量的访问形式

1.2.2 Object.key

1.3 数字属性

menuIcon: {
  125: "el-icon-s-custom",
  103: "el-icon-star-on",
  145: "el-icon-s-data"
}

2 深度拷贝对象

  1. 数组也可以用key in遍历
function deepCopy(source) {
    let target;
    if (source instanceof Array) {
        target = [];
    } else {
        target = {};
    }
    for (let key in source) {
        let item = source[key]

        if (item instanceof Object) {
            target[key] = deepCopy(item);
        } else {
            // 普通值
            target[key] = item;
        }

    }
    return target;
}

3 es6对象属性和方法简写

3.1 属性简写

let name = "Aeroxian", school = "CAU";
// 传统方式
let obj1 = {
    name: name,
    school: school
}
// 简写
let obj2 = { name, school }

3.2 方法简写

// 传统方式
let obj1 = {
    hello: function () {
        console.log("Hello")
    }
}
// 简写
let obj2 = {
    hello() {
        console.log("hello")
    }
}